// 基础字段类型
export interface BaseAboutUs {
  id?: number;
  section_type?: SectionType;
  content?: string;
  sort_order?: number;
  created_at?: string; // 或 Date 类型，根据实际使用场景决定
  updated_at?: string; // 或 Date 类型
}

// 枚举类型（使用联合类型替代传统enum，更符合TS最佳实践）
export type SectionType = 'title' | 'intro' | 'vision_mission' | 'milestone' | 'culture';

// 特定section_type的类型定义
export interface AboutUsIntro extends BaseAboutUs {
  section_type?: 'intro';
  // intro类型无额外必填字段（title/year/icon_class等均为NULL）
}

export interface AboutUsVisionMission extends BaseAboutUs {
  section_type: 'vision_mission';
  title: string;
  iconClass?: string;
  bgColor?: string;
  textColor?: string;
}

export interface AboutUsMilestone extends BaseAboutUs {
  section_type: 'milestone';
  title?: string;
  year?: string;
  icon_class?: string;
  bgColor?: string;
  textColor?: string;
}

export interface AboutUsCulture extends BaseAboutUs {
  section_type?: 'culture';
  title?: string;
  icon_class?: string;
  bgColor?: string;
  textColor?: string;
}

// 联合类型（核心类型）
export interface AboutUs {
  cultures?: AboutUsCulture[];
  intro?: string;
  milestones?: AboutUsMilestone[];
  visionMission?: AboutUsVisionMission[];
  title?: string;
  logo?: string;
}


export interface AboutData {
  success?: boolean;
  code?: number;
  message?: string;
  data?: AboutUs
}
export type AboutItem = AboutUsMilestone | AboutUsVisionMission | AboutUsCulture;